package org.han.jdk.proxy.staticproxy;

/**
 * @author hanjuntao
 * @date 2025/4/25 0025
 */
/**
 * 静态代理 ——> 代理对象
 */
public class MarryCompanyProxy implements Marry {
    // 目标对象
    private Marry marry;

    // 通过构造器将目标对象传入
    public MarryCompanyProxy(Marry marry) {
        this.marry = marry;
    }

    // 实现行为
    @Override
    public void toMarry() {
        // 增强行为
        before();
        // 执行目标对象中的方法
        marry.toMarry();
        // 增强行为
        after();
    }

    /**
     * 增强行为
     */
    private void after() {
        System.out.println("新婚快乐，早生贵子！");
    }

    /**
     * 增强行为
     */
    private void before() {
        System.out.println("场地正在布置中...");
    }
}